Required Stiffness of Slab Braces

Brace Loading

P-delta Effect

Slab braces need to be designed with the capacity to resist horizontal loading, and by code, this is at least 2% of the vertical load. This 2% is a resultant of the moment couple that is generated by a shore with an out of plumbness of 1:500, or 1/4" in 10 ft, multiplied by a factor of safety of 5.

$$P_{hor} \times \text{ Horizontal Moment Arm} = P \times \Delta$$

(Hover over the image to see the motion that causes $\Delta$.)

$$P_{hor} \times 10' \times \frac{12"}{1'} = P \times \frac{1}{4}"$$$$P_{hor} \times 120" = P \times 0.25"$$$$P_{hor} = P \times \frac{0.25"}{120"} \approx P \times \frac{1}{500}$$$$P_{hor} = P \times 0.004 $$

and when the factor of safety of 5 is applied,

$$P_{hor} = P \times 0.004 \times 5 = P \times 0.02 $$

$P$ - $\Delta$ Effect

However, to resist this horizontal load, the brace must stretch a little more than its initial length.

$$\text{The change in length of the brace} = \text{Tension in the brace}\times \text{Stiffness of the brace}$$

Where:

$$\text{Stiffness of the brace} = \text{Lumber stiffness}+\text{Connection stiffness}$$$$\Delta_{br} = T_{br} \left(\frac{L_{br}}{A E} + k_{connection}\right)$$

where,

$k_{connection}$ is the connection stiffness.

If this stretching is greater than the expected stretching of $ \frac{h}{500} \cos(\theta)$ then the moment will be greater than the design moment.

This greater moment in turn must be resisted be the brace, which in turn results in more stretching, etc. This is known as the P-Delta Effect.

In [1]:
from numpy import arcsin
from numpy import cos, sqrt,sin 
from numpy import rad2deg, deg2rad
from numpy import ceil

nails = 1
nail_str=141*1.25
A = 1.5*0.75 #brace cross section area
E =1.6E6 #Species Young's modulus
h = 96 #Height of the shoring
G = 0.5 # EWP vs 0.5 for DFL specific gravity
d = 0.177 #16d common nail diameter
deg_ang = 45 #angle of brace in degrees
theta = deg2rad(deg_ang)
L = h*sqrt(2)

def K(nails):
    """Determines the nail, connection, board, and brace stiffnesses """
    k_2 = A*E/L #board stiffness
    k_nail = 80000*G**1.5*d**0.8 #nail stiffness
    k_1 = nails*k_nail #connection stiffness
    k_eq = 1/((2/k_1)+1/k_2) #stiffness provided
    return (k_nail,k_1,k_2,k_eq)

k_nail,k_1,k_2,k_eq = K(nails)

def delta(angle, P, old_d):
    M = old_d * P
    P_hor = M/h
    T = P_hor/cos(angle)
    d_br = T/k_eq
    return d_br*cos(angle)

def P_delta(P):
    old_d = h/500
    angle = theta
    Delta = [old_d]
    steps = 10
    for j in range(steps):
        d = delta(angle, P, old_d)
        Delta.append(d)
        old_d = d
    i =list(range(steps+1)) 
    return (i,Delta)
P = 200000
(i1,Delta1) = P_delta(P)
P = 290000
(i2,Delta2) = P_delta(P)

%matplotlib inline
import matplotlib
# plot = matplotlib.pyplot.plot
plt = matplotlib.pyplot
In [2]:
def plot():
    fig, ax1 = plt.subplots()
    l_1, = ax1.plot(i1,Delta1,'o-g', label="Stable")
    l_2, = ax1.plot(i2,Delta2,'x-r', label="Unstable")
    ax1.set_xlabel("Itteration")
    ax1.set_ylabel("Delta Increments (in)")
    ax1.set_title('P-$\Delta$ Effect in Slab Bracing')
    lines=[l_1,l_2]
    plt.legend(lines, [l.get_label() for l in lines],'upper left')
    plt.grid(True)

Stability Example

Looking at two braces, one with adequate stiffness, and another that isn't quite stiff enough. We can start them out with the initial displacement of L/500. When we load them us with 2% of the vertical load, we can calculate the resulting stretch. This can then be use to recalculate the horizontal force and the resulting displacement.

We can repeat this process, until it becomes clear, that either the brace will stabilize, or it be unstable.

In [3]:
plot()

How to Check Stiffness

Generally, with the factors of safety applied to the horizontal load requirements, stiffness is not going to be an issue. However, if you have an unusual situation, where you have a thick slab, small braces, or no concrete columns intersect the slab form, you can do a quick check to see if you should add more braces.

Calculate the value of the equation below, and if it is less than zero you will need to add more braces to resist any $P-\Delta$ effects.

$$\frac{ Z' \cos(\theta)}{801 \Sigma P (n) G^{1.5} d^{0.8}} + L_{br}\left(\frac{ 1}{n A E'}-\frac{ \sin(2\theta)\cos(\theta)}{10 \Sigma P}\right) \le 0 \text{ when brace stiffness is inadequate}$$

Where:

$\Sigma P$ is the portion of the vertical load that the brace need to resist (lbs).

$n$ is the number of tension braces used to resist the horizontal load in one direction.

$Z'$ is the adjusted strength for the type of nails used to fasten the ends of each brace (lbs).

$d$ is the diameter of the nails used to fasten the braces (in) (Table L4 of the Timber NDS).

$G$ is the specific gravity of the brace lumber (Found in the material proerties tables of the Timber Supplement [also Table 12.3.3A in the NDS])

$L_{br}$ is the length of a brace (in).

$A$ is the cross sectional area of a brace (in$^2$).

$E'$ is the modified Young's modulus of the species and grade of the brace (psi).

$\theta$ is the angle of the brace.

(This is adapted from the information about the "Eurocode 5 (1995) nail-stiffness formulation, Section 7, Serviceability limit-states" found in Journal of the South African Institution of Civil Engineering • Volume 48 Number 4 December 2006: Effective stiffness of nailed multiple-ply timber members.)

Viable Alternative

If you are still unsure of yourself, or do not think that your liability insurance will cover you, then contact an engineer to check your design.

Knowing when you are out of your depth, is a good thing to be able to know.

(Click on the blue right arrow to see the references used in this lecture.)

References:

Class website (Use this link to if you are taking the course on e-learning.)

Github.io version of course website (Do not use this link if you are taking this course in Summer A or B.)

IPython.org (IPython is the opensource software used in the development of much of this course.)

Complete Software List

CSS stylesheet

/* class = "max box" for img tags

<audio controls data-autoplay preload>
 <source src="https://github.com/damontallen/Construction-Lectures-Fall-2014/raw/master/Intro/FILE%20NAME.mp3"
         type='audio/mp3'>
 <p><strong>Your user agent does not support the HTML5 Audio element or the files are missing.</strong></p>
</audio><a></a>

*/
class = "max box" == style="max-width:300px; max-height:300px; border:1px solid blue; float:left; margin-right:3px;"
important == <strong><font style="font:italic bold 16px arial;"> Text here </font></strong>
Example <important class="missing">Video Placeholder</important>

<a href="http://i.imgur.com/qzpe6eS.png" id="Brace p-delta">
    <img title="Hello" src="http://i.imgur.com/qzpe6eS.png" onmouseover="this.src='http://i.imgur.com/2KgSbca.png'" onmouseout="this.src='http://i.imgur.com/qzpe6eS.png'" style="max-width:300px; max-height:300px; border:1px solid blue; float:left; margin-right:3px;"/>
</a>
In [3]: